package com.ny.zmb.openapi.ysutil.from.BizReqJsonCollege;

import com.ny.zmb.openapi.ysutil.annotation.Length;
import com.ny.zmb.openapi.ysutil.annotation.NotBlank;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @author ChenZhiZheng
 * @date 20241109
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class YsRegisterSettlement {
    /**
     * MCC码（取值参考：调用公共接口-mcc码查询接口）
     */
    @NotBlank(message = "MCC码" + "不能为空")
    @Length(min = 1, max = 50, message = "MCC码" + "长度错误")
    private String mccCode;
    /**
     * 结算起始金额，单位：元
     * 必须为正整数，最小值为0元
     * 默认为10元，不修改无需传值
     * 待结算金额(不包含未分账金额)＜结算起始金额时不会自动结算
     */
//    @NotBlank(message = "结算起始金额" + "不能为空")
    private String lowestStlAmt;
    /**
     * 结算方式，不传值默认01
     * 01-银行账户(自动结算到银行账户)
     * 02-平台内账户(自动结算到一般消费账户，需调用接口提现到银行账户)
     */
//    @NotBlank(message = "结算方式" + "不能为空")
//    @Length(min = 1, max = 2, message = "结算方式" + "长度错误")
    private String settleType;
    /**
     * 报备类型，不传值默认01
     * 01-自动报备（同时报备微信和支付宝）
     * 02-手动报备（需要时再调用商户报备接口）
     * 03-自动报备（仅报备微信）
     * 04-自动报备（仅报备支付宝）
     * 注：无需微信或支付宝收款时请选择手动报备，自动报备需开通对应权限。
     */
//    @NotBlank(message = "报备类型" + "不能为空")
//    @Length(min = 1, max = 2, message = "报备类型" + "长度错误")
    private String reportType;
    /**
     * 进件结果通知，不传值默认01
     * 01-不通知(默认值)
     * 02-联系人邮件通知
     * 03-联系人短信通知
     * 04-联系人邮箱+短信通知
     */
//    @NotBlank(message = "进件结果通知" + "不能为空")
//    @Length(min = 1, max = 2, message = "进件结果通知" + "长度错误")
    private String notifyType;
    /**
     * 进件结果异步回调URL，为空则不发送
     */
//    @NotBlank(message = "进件结果异步回调URL" + "不能为空")
//    @Length(min = 1, max = 500, message = "进件结果异步回调URL" + "长度错误")
    private String notifyAddress;

}
